Package-level declarations

Types

Link copied to clipboard
@Serializable
data class ApplyEscrowLogisticsResponse(val invoiceNumber: String, val sentAt: @Serializable(with = InstantSerializer::class) Instant, val appliedAt: @Serializable(with = InstantSerializer::class) Instant)

에스크로 배송 정보 등록 성공 응답

Link copied to clipboard
@Serializable
@SerialName(value = "BEFORE_REGISTERED")
data object BeforeRegisteredPaymentEscrow : PaymentEscrow.Recognized

배송 정보 등록 전

Link copied to clipboard
@Serializable
data class BillingKeyPaymentSummary(val pgTxId: String, val paidAt: @Serializable(with = InstantSerializer::class) Instant)

빌링키 결제 완료된 결제 건 요약 정보

Link copied to clipboard
@Serializable
@SerialName(value = "CANCELLED")
data class CancelledPayment(val id: String, val transactionId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val paidAt: @Serializable(with = InstantSerializer::class) Instant? = null, val pgTxId: String? = null, val cashReceipt: PaymentCashReceipt? = null, val receiptUrl: String? = null, val cancellations: List<PaymentCancellation>, val cancelledAt: @Serializable(with = InstantSerializer::class) Instant) : Payment.Recognized

결제 취소 상태 건

Link copied to clipboard
@Serializable
@SerialName(value = "CANCELLED")
data class CancelledPaymentCashReceipt(val type: CashReceiptType? = null, val pgReceiptId: String? = null, val issueNumber: String, val totalAmount: Long, val taxFreeAmount: Long? = null, val currency: Currency, val url: String? = null, val issuedAt: @Serializable(with = InstantSerializer::class) Instant, val cancelledAt: @Serializable(with = InstantSerializer::class) Instant) : PaymentCashReceipt.Recognized

취소된 현금영수증

Link copied to clipboard
@Serializable
@SerialName(value = "CANCELLED")
data class CancelledPaymentEscrow(val company: String, val invoiceNumber: String, val sentAt: @Serializable(with = InstantSerializer::class) Instant? = null, val appliedAt: @Serializable(with = InstantSerializer::class) Instant? = null) : PaymentEscrow.Recognized

거래 취소

Link copied to clipboard
@Serializable
@SerialName(value = "CANCELLED")
data class CancelledPaymentEvent(val id: String, val paymentId: String, val transactionId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val createdAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val totalAmount: PaymentAmount, val currency: Currency, val customer: Customer, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val pgTxId: String? = null, val cashReceipt: PaymentCashReceipt? = null, val receiptUrl: String? = null, val cancellation: PaymentCancellation? = null, val promotionId: String? = null, val eventAmount: Long) : PaymentEvent.Recognized

결제 취소 상태 이벤트

Link copied to clipboard
@Serializable
@SerialName(value = "CANCELLED")
data class CancelledPaymentTransaction(val id: String, val paymentId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val paidAt: @Serializable(with = InstantSerializer::class) Instant? = null, val pgTxId: String? = null, val cashReceipt: PaymentCashReceipt? = null, val receiptUrl: String? = null, val cancellations: List<PaymentCancellation>, val cancelledAt: @Serializable(with = InstantSerializer::class) Instant) : PaymentTransaction.Recognized

결제 취소 상태 건

Link copied to clipboard
@Serializable
data class CancelPaymentBodyRefundAccount(val bank: Bank, val number: String, val holderName: String, val holderPhoneNumber: String? = null)

고객 정보 입력 형식

Link copied to clipboard
@Serializable
data class CancelPaymentResponse(val cancellation: PaymentCancellation)

결제 취소 성공 응답

Link copied to clipboard
@Serializable(with = CancelRequesterSerializer::class)
sealed interface CancelRequester

결제 취소 요청 주체

Link copied to clipboard
Link copied to clipboard
@Serializable
data object CapturePaymentResponse

수동 매입 성공 응답

Link copied to clipboard
@Serializable
data class CloseVirtualAccountResponse(val closedAt: @Serializable(with = InstantSerializer::class) Instant)

가상계좌 말소 성공 응답

Link copied to clipboard
@Serializable
@SerialName(value = "CONFIRMED")
data class ConfirmedPaymentEscrow(val company: String, val invoiceNumber: String, val sentAt: @Serializable(with = InstantSerializer::class) Instant? = null, val appliedAt: @Serializable(with = InstantSerializer::class) Instant? = null, val isAutomaticallyConfirmed: Boolean) : PaymentEscrow.Recognized

구매 확정

Link copied to clipboard
@Serializable
data class ConfirmedPaymentSummary(val pgTxId: String, val paidAt: @Serializable(with = InstantSerializer::class) Instant)

결제 수동 승인 완료된 결제 건 요약 정보

Link copied to clipboard
@Serializable
data class ConfirmEscrowResponse(val completedAt: @Serializable(with = InstantSerializer::class) Instant)

에스크로 구매 확정 성공 응답

Link copied to clipboard

편의점 브랜드

Link copied to clipboard
@Serializable
@SerialName(value = "DELIVERED")
data class DeliveredPaymentEscrow(val company: String, val invoiceNumber: String, val sentAt: @Serializable(with = InstantSerializer::class) Instant? = null, val appliedAt: @Serializable(with = InstantSerializer::class) Instant? = null) : PaymentEscrow.Recognized

배송 완료

Link copied to clipboard
@Serializable
data class Dispute(val status: DisputeStatus, val pgDisputeId: String? = null, val reason: String, val createdAt: @Serializable(with = InstantSerializer::class) Instant, val resolvedAt: @Serializable(with = InstantSerializer::class) Instant? = null)

분쟁 내역

Link copied to clipboard
@Serializable(with = DisputeStatusSerializer::class)
sealed interface DisputeStatus

분쟁 상태

Link copied to clipboard
object DisputeStatusSerializer : KSerializer<DisputeStatus>
Link copied to clipboard
@Serializable
@SerialName(value = "FAILED")
data class FailedPayment(val id: String, val transactionId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel? = null, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val failedAt: @Serializable(with = InstantSerializer::class) Instant, val failure: PaymentFailure) : Payment.Recognized

결제 실패 상태 건

Link copied to clipboard
@Serializable
@SerialName(value = "FAILED")
data class FailedPaymentCancellation(val id: String, val pgCancellationId: String? = null, val totalAmount: Long, val taxFreeAmount: Long, val vatAmount: Long, val easyPayDiscountAmount: Long? = null, val reason: String, val cancelledAt: @Serializable(with = InstantSerializer::class) Instant? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val trigger: Trigger? = null) : PaymentCancellation.Recognized

취소 실패 상태

Link copied to clipboard
@Serializable
@SerialName(value = "FAILED")
data class FailedPaymentTransaction(val id: String, val paymentId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel? = null, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val failedAt: @Serializable(with = InstantSerializer::class) Instant, val failure: PaymentFailure) : PaymentTransaction.Recognized

결제 실패 상태 건

Link copied to clipboard

결제 이벤트 커서 기반 대용량 다건 조회 성공 응답 정보

Link copied to clipboard
@Serializable
data class GetAllPaymentsByCursorResponse(val items: List<PaymentWithCursor>)

결제 건 커서 기반 대용량 다건 조회 성공 응답 정보

Link copied to clipboard
@Serializable
data class GetPaymentsResponse(val items: List<Payment>, val page: PageInfo)

결제 건 다건 조회 성공 응답 정보

Link copied to clipboard
@Serializable
data class GetPaymentTransactionsResponse(val items: List<PaymentTransaction>)

결제 시도 내역 조회 응답 정보

Link copied to clipboard
@Serializable
data class InstantPaymentMethodInput(val card: InstantPaymentMethodInputCard? = null, val virtualAccount: InstantPaymentMethodInputVirtualAccount? = null)

수기 결제 수단 입력 정보

Link copied to clipboard
@Serializable
data class InstantPaymentMethodInputCard(val credential: CardCredential, val installmentMonth: Int? = null, val useFreeInstallmentPlan: Boolean? = null, val useFreeInterestFromMerchant: Boolean? = null, val useCardPoint: Boolean? = null)

카드 수단 정보 입력 정보

Link copied to clipboard

가상계좌 수단 정보 입력 정보

@Serializable
data class InstantPaymentMethodInputVirtualAccountCashReceiptInfo(val type: CashReceiptInputType, val customerIdentityNumber: String)

가상계좌 결제 시 현금영수증 정보

@Serializable
data class InstantPaymentMethodInputVirtualAccountExpiry(val validHours: Int? = null, val dueDate: @Serializable(with = InstantSerializer::class) Instant? = null)

입금 만료 기한

@Serializable
data class InstantPaymentMethodInputVirtualAccountOptionFixed(val pgAccountId: String? = null, val accountNumber: String? = null)

고정식 가상계좌 발급 유형

Link copied to clipboard
@Serializable
data class InstantPaymentSummary(val pgTxId: String, val paidAt: @Serializable(with = InstantSerializer::class) Instant)

수기 결제가 완료된 결제 건 요약 정보

Link copied to clipboard
@Serializable
@SerialName(value = "ISSUED")
data class IssuedPaymentCashReceipt(val type: CashReceiptType? = null, val pgReceiptId: String? = null, val issueNumber: String, val totalAmount: Long, val taxFreeAmount: Long? = null, val currency: Currency, val url: String? = null, val issuedAt: @Serializable(with = InstantSerializer::class) Instant) : PaymentCashReceipt.Recognized

발급 완료된 현금영수증

Link copied to clipboard
@Serializable
data class ModifyEscrowLogisticsResponse(val invoiceNumber: String, val sentAt: @Serializable(with = InstantSerializer::class) Instant, val modifiedAt: @Serializable(with = InstantSerializer::class) Instant)

에스크로 배송 정보 수정 성공 응답

Link copied to clipboard
@Serializable
@SerialName(value = "PAID")
data class PaidPayment(val id: String, val transactionId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val paidAt: @Serializable(with = InstantSerializer::class) Instant, val pgTxId: String? = null, val pgResponse: String? = null, val cashReceipt: PaymentCashReceipt? = null, val receiptUrl: String? = null, val disputes: List<Dispute>, val cancellations: List<PaymentCancellation>? = null) : Payment.Recognized

결제 완료 상태 건

Link copied to clipboard
@Serializable
@SerialName(value = "PAID")
data class PaidPaymentEvent(val id: String, val paymentId: String, val transactionId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val createdAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val totalAmount: PaymentAmount, val currency: Currency, val customer: Customer, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val pgTxId: String? = null, val pgResponse: String? = null, val cashReceipt: PaymentCashReceipt? = null, val receiptUrl: String? = null, val disputes: List<Dispute>, val promotionId: String? = null, val eventAmount: Long) : PaymentEvent.Recognized

결제 완료 이벤트

Link copied to clipboard
@Serializable
@SerialName(value = "PAID")
data class PaidPaymentTransaction(val id: String, val paymentId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val paidAt: @Serializable(with = InstantSerializer::class) Instant, val pgTxId: String? = null, val pgResponse: String? = null, val cashReceipt: PaymentCashReceipt? = null, val receiptUrl: String? = null) : PaymentTransaction.Recognized

결제 완료 상태 건

Link copied to clipboard
@Serializable
@SerialName(value = "PARTIAL_CANCELLED")
data class PartialCancelledPayment(val id: String, val transactionId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val paidAt: @Serializable(with = InstantSerializer::class) Instant? = null, val pgTxId: String? = null, val cashReceipt: PaymentCashReceipt? = null, val receiptUrl: String? = null, val cancellations: List<PaymentCancellation>, val cancelledAt: @Serializable(with = InstantSerializer::class) Instant) : Payment.Recognized

결제 부분 취소 상태 건

Link copied to clipboard
@Serializable
@SerialName(value = "PARTIAL_CANCELLED")
data class PartialCancelledPaymentEvent(val id: String, val paymentId: String, val transactionId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val createdAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val totalAmount: PaymentAmount, val currency: Currency, val customer: Customer, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val pgTxId: String? = null, val cashReceipt: PaymentCashReceipt? = null, val receiptUrl: String? = null, val cancellation: PaymentCancellation? = null, val promotionId: String? = null, val eventAmount: Long) : PaymentEvent.Recognized

결제 부분 취소 상태 이벤트

Link copied to clipboard
@Serializable
@SerialName(value = "PARTIAL_CANCELLED")
data class PartialCancelledPaymentTransaction(val id: String, val paymentId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val paidAt: @Serializable(with = InstantSerializer::class) Instant? = null, val pgTxId: String? = null, val cashReceipt: PaymentCashReceipt? = null, val receiptUrl: String? = null, val cancellations: List<PaymentCancellation>, val cancelledAt: @Serializable(with = InstantSerializer::class) Instant) : PaymentTransaction.Recognized

결제 부분 취소 상태 건

Link copied to clipboard
@Serializable
data class PayInstantlyResponse(val payment: InstantPaymentSummary)

수기 결제 성공 응답

Link copied to clipboard
@Serializable(with = PaymentSerializer::class)
sealed interface Payment

결제 건

Link copied to clipboard
@Serializable
data class PaymentAmount(val total: Long, val taxFree: Long, val vat: Long? = null, val supply: Long? = null, val discount: Long, val paid: Long, val cancelled: Long, val cancelledTaxFree: Long)

결제 금액 세부 정보

Link copied to clipboard
sealed interface PaymentCancellation

결제 취소 내역

Link copied to clipboard
object PaymentCancellationSerializer : JsonContentPolymorphicSerializer<PaymentCancellation>
Link copied to clipboard
sealed interface PaymentCashReceipt

결제 건 내 현금영수증 정보

Link copied to clipboard
object PaymentCashReceiptSerializer : JsonContentPolymorphicSerializer<PaymentCashReceipt>
Link copied to clipboard

결제건 내 현금영수증 상태

Link copied to clipboard
class PaymentClient(apiSecret: String, apiBase: String = "https://api.portone.io", storeId: String? = null) : Closeable

API Secret을 사용해 포트원 API 클라이언트를 생성합니다.

Link copied to clipboard
@Serializable(with = PaymentEscrowSerializer::class)
sealed interface PaymentEscrow

에스크로 정보

Link copied to clipboard
@Serializable
data class PaymentEscrowReceiverInput(val name: String? = null, val phoneNumber: String? = null, val zipcode: String? = null, val address: SeparatedAddressInput? = null)

에스크로 수취인 정보

Link copied to clipboard
@Serializable
data class PaymentEscrowSenderInput(val name: String? = null, val phoneNumber: String? = null, val zipcode: String? = null, val relationship: String? = null, val address: SeparatedAddressInput? = null)

에스크로 발송자 정보

Link copied to clipboard
object PaymentEscrowSerializer : JsonContentPolymorphicSerializer<PaymentEscrow>
Link copied to clipboard
@Serializable(with = PaymentEventSerializer::class)
sealed interface PaymentEvent

결제 이벤트

Link copied to clipboard
object PaymentEventSerializer : JsonContentPolymorphicSerializer<PaymentEvent>
Link copied to clipboard
@Serializable
data class PaymentEventWithCursor(val paymentEvent: PaymentEvent, val cursor: String)

결제 이벤트 및 커서 정보

Link copied to clipboard
@Serializable
data class PaymentFailure(val reason: String? = null, val pgCode: String? = null, val pgMessage: String? = null)

결제 실패 정보

Link copied to clipboard
@Serializable
data class PaymentFilterInput(val merchantId: String? = null, val storeId: String? = null, val timestampType: PaymentTimestampType? = null, val from: @Serializable(with = InstantSerializer::class) Instant? = null, val until: @Serializable(with = InstantSerializer::class) Instant? = null, val status: List<PaymentStatus>? = null, val methods: List<PaymentMethodType>? = null, val pgProvider: List<PgProvider>? = null, val isTest: Boolean? = null, val isScheduled: Boolean? = null, val sortBy: PaymentSortBy? = null, val sortOrder: SortOrder? = null, val version: PortOneVersion? = null, val webhookStatus: PaymentWebhookStatus? = null, val platformType: PaymentClientType? = null, val currency: Currency? = null, val isEscrow: Boolean? = null, val escrowStatus: PaymentFilterInputEscrowStatus? = null, val cardBrand: CardBrand? = null, val cardType: CardType? = null, val cardOwnerType: CardOwnerType? = null, val giftCertificateType: PaymentMethodGiftCertificateType? = null, val cashReceiptType: CashReceiptInputType? = null, val cashReceiptStatus: PaymentCashReceiptStatus? = null, val cashReceiptIssuedAtRange: DateTimeRange? = null, val cashReceiptCancelledAtRange: DateTimeRange? = null, val textSearch: List<PaymentTextSearch>? = null)

결제 다건 조회를 위한 입력 정보

Link copied to clipboard

에스크로 상태

Link copied to clipboard
@Serializable
data class PaymentInstallment(val month: Int, val isInterestFree: Boolean)

할부 정보

Link copied to clipboard
@Serializable
data class PaymentLogistics(val company: PaymentLogisticsCompany, val invoiceNumber: String, val sentAt: @Serializable(with = InstantSerializer::class) Instant, val receivedAt: @Serializable(with = InstantSerializer::class) Instant? = null, val address: SeparatedAddressInput? = null)

배송정보

Link copied to clipboard

물류 회사

Link copied to clipboard
@Serializable(with = PaymentMethodSerializer::class)
sealed interface PaymentMethod

결제수단 정보

Link copied to clipboard
@Serializable
@SerialName(value = "PaymentMethodCard")
data class PaymentMethodCard(val card: Card? = null, val approvalNumber: String? = null, val installment: PaymentInstallment? = null, val pointUsed: Boolean? = null) : PaymentMethod.Recognized, PaymentMethodEasyPayMethod.Recognized

결제수단 카드 정보

Link copied to clipboard
@Serializable
@SerialName(value = "PaymentMethodConvenienceStore")
data class PaymentMethodConvenienceStore(val convenienceStoreBrand: ConvenienceStoreBrand? = null, val confirmationNumber: String? = null, val receiptNumber: String? = null, val paymentDeadline: @Serializable(with = InstantSerializer::class) Instant? = null) : PaymentMethod.Recognized

편의점 결제 상세 정보

Link copied to clipboard
@Serializable
@SerialName(value = "PaymentMethodCrypto")
data object PaymentMethodCrypto : PaymentMethod.Recognized

암호화폐 결제 상세 정보

Link copied to clipboard
@Serializable
@SerialName(value = "PaymentMethodEasyPay")
data class PaymentMethodEasyPay(val provider: EasyPayProvider? = null, val easyPayMethod: PaymentMethodEasyPayMethod? = null) : PaymentMethod.Recognized

간편 결제 상세 정보

Link copied to clipboard

간편 결제 수단

Link copied to clipboard
@Serializable
@SerialName(value = "PaymentMethodEasyPayMethodCharge")
data class PaymentMethodEasyPayMethodCharge(val bank: Bank? = null) : PaymentMethodEasyPayMethod.Recognized

충전식 포인트 결제 정보

Link copied to clipboard
object PaymentMethodEasyPayMethodSerializer : JsonContentPolymorphicSerializer<PaymentMethodEasyPayMethod>
Link copied to clipboard
@Serializable
@SerialName(value = "PaymentMethodGiftCertificate")
data class PaymentMethodGiftCertificate(val giftCertificateType: PaymentMethodGiftCertificateType? = null, val approvalNumber: String) : PaymentMethod.Recognized

상품권 상세 정보

Link copied to clipboard

상품권 종류

Link copied to clipboard
@Serializable
@SerialName(value = "PaymentMethodMobile")
data class PaymentMethodMobile(val phoneNumber: String? = null) : PaymentMethod.Recognized

모바일 상세 정보

Link copied to clipboard
object PaymentMethodSerializer : JsonContentPolymorphicSerializer<PaymentMethod>
Link copied to clipboard
@Serializable
@SerialName(value = "PaymentMethodTransfer")
data class PaymentMethodTransfer(val bank: Bank? = null, val accountNumber: String? = null) : PaymentMethod.Recognized, PaymentMethodEasyPayMethod.Recognized

계좌 이체 상세 정보

Link copied to clipboard
@Serializable
@SerialName(value = "PaymentMethodVirtualAccount")
data class PaymentMethodVirtualAccount(val bank: Bank? = null, val accountNumber: String, val accountType: PaymentMethodVirtualAccountType? = null, val remitteeName: String? = null, val remitterName: String? = null, val expiredAt: @Serializable(with = InstantSerializer::class) Instant? = null, val issuedAt: @Serializable(with = InstantSerializer::class) Instant? = null, val refundStatus: PaymentMethodVirtualAccountRefundStatus? = null) : PaymentMethod.Recognized

가상계좌 상세 정보

Link copied to clipboard

가상계좌 환불 상태

Link copied to clipboard

가상계좌 유형

Link copied to clipboard
object PaymentSerializer : JsonContentPolymorphicSerializer<Payment>
Link copied to clipboard
@Serializable(with = PaymentSortBySerializer::class)
sealed interface PaymentSortBy

결제 건 정렬 기준

Link copied to clipboard
object PaymentSortBySerializer : KSerializer<PaymentSortBy>
Link copied to clipboard
@Serializable(with = PaymentStatusSerializer::class)
sealed interface PaymentStatus

결제 건 상태

Link copied to clipboard
object PaymentStatusSerializer : KSerializer<PaymentStatus>
Link copied to clipboard
@Serializable
data class PaymentTextSearch(val field: PaymentTextSearchField, val value: String)

통합검색 입력 정보

Link copied to clipboard

통합검색 항목

Link copied to clipboard
sealed interface PaymentTimestampType

조회 시점 기준

Link copied to clipboard
sealed interface PaymentTransaction

결제 시도

Link copied to clipboard
object PaymentTransactionSerializer : JsonContentPolymorphicSerializer<PaymentTransaction>
Link copied to clipboard
@Serializable
data class PaymentWebhook(val paymentStatus: PaymentWebhookPaymentStatus? = null, val id: String, val status: PaymentWebhookStatus? = null, val url: String, val isAsync: Boolean? = null, val currentExecutionCount: Int? = null, val maxExecutionCount: Int? = null, val trigger: PaymentWebhookTrigger? = null, val request: PaymentWebhookRequest? = null, val response: PaymentWebhookResponse? = null, val triggeredAt: @Serializable(with = InstantSerializer::class) Instant? = null)

성공 웹훅 내역

Link copied to clipboard

웹훅 발송 시 결제 건 상태

Link copied to clipboard
@Serializable
data class PaymentWebhookRequest(val header: String? = null, val body: String, val requestedAt: @Serializable(with = InstantSerializer::class) Instant? = null)

웹훅 요청 정보

Link copied to clipboard
@Serializable
data class PaymentWebhookResponse(val code: String, val header: String, val body: String, val respondedAt: @Serializable(with = InstantSerializer::class) Instant)

웹훅 응답 정보

Link copied to clipboard
sealed interface PaymentWebhookStatus

웹훅 전송 상태

Link copied to clipboard

웹훅 실행 트리거

Link copied to clipboard
@Serializable
data class PaymentWithCursor(val payment: Payment, val cursor: String)

결제 건 및 커서 정보

Link copied to clipboard
@Serializable
@SerialName(value = "PAY_PENDING")
data class PayPendingPayment(val id: String, val transactionId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val pgTxId: String? = null) : Payment.Recognized

결제 완료 대기 상태 건

Link copied to clipboard
@Serializable
@SerialName(value = "PAY_PENDING")
data class PayPendingPaymentTransaction(val id: String, val paymentId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val pgTxId: String? = null) : PaymentTransaction.Recognized

결제 완료 대기 상태 건

Link copied to clipboard
@Serializable
data class PayWithBillingKeyResponse(val payment: BillingKeyPaymentSummary)

빌링키 결제 성공 응답

Link copied to clipboard
@Serializable
data object PreRegisterPaymentResponse

결제 사전 등록 성공 응답

Link copied to clipboard
@Serializable
@SerialName(value = "READY")
data class ReadyPayment(val id: String, val transactionId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel? = null, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null) : Payment.Recognized

준비 상태 건

Link copied to clipboard
@Serializable
@SerialName(value = "READY")
data class ReadyPaymentTransaction(val id: String, val paymentId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel? = null, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null) : PaymentTransaction.Recognized

준비 상태 건

Link copied to clipboard
@Serializable
@SerialName(value = "REGISTERED")
data class RegisteredPaymentEscrow(val company: String, val invoiceNumber: String, val sentAt: @Serializable(with = InstantSerializer::class) Instant? = null, val appliedAt: @Serializable(with = InstantSerializer::class) Instant? = null) : PaymentEscrow.Recognized

배송 정보 등록 완료

Link copied to clipboard
@Serializable
data class RegisterStoreReceiptBodyItem(val storeBusinessRegistrationNumber: String, val storeName: String, val totalAmount: Long, val taxFreeAmount: Long? = null, val vatAmount: Long? = null, val supplyAmount: Long? = null, val currency: Currency)

하위 상점 거래 정보

Link copied to clipboard
@Serializable
data class RegisterStoreReceiptResponse(val receiptUrl: String? = null)

영수증 내 하위 상점 거래 등록 응답

Link copied to clipboard
@Serializable
@SerialName(value = "REJECT_CONFIRMED")
data class RejectConfirmedPaymentEscrow(val company: String, val invoiceNumber: String, val sentAt: @Serializable(with = InstantSerializer::class) Instant? = null, val appliedAt: @Serializable(with = InstantSerializer::class) Instant? = null) : PaymentEscrow.Recognized

구매 거절 확정

Link copied to clipboard
@Serializable
@SerialName(value = "REJECTED")
data class RejectedPaymentEscrow(val company: String, val invoiceNumber: String, val sentAt: @Serializable(with = InstantSerializer::class) Instant? = null, val appliedAt: @Serializable(with = InstantSerializer::class) Instant? = null) : PaymentEscrow.Recognized

구매 거절

Link copied to clipboard
@Serializable
@SerialName(value = "REQUESTED")
data class RequestedPaymentCancellation(val id: String, val pgCancellationId: String? = null, val totalAmount: Long, val taxFreeAmount: Long, val vatAmount: Long, val easyPayDiscountAmount: Long? = null, val reason: String, val cancelledAt: @Serializable(with = InstantSerializer::class) Instant? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val trigger: Trigger? = null) : PaymentCancellation.Recognized

취소 요청 상태

Link copied to clipboard
@Serializable
data class ResendWebhookResponse(val webhook: PaymentWebhook)

웹훅 재발송 응답 정보

Link copied to clipboard
@Serializable
data class StopPaymentCancellationResponse(val stoppedAt: @Serializable(with = InstantSerializer::class) Instant)

결제 취소 요청 취소 성공 응답

Link copied to clipboard
@Serializable
@SerialName(value = "SUCCEEDED")
data class SucceededPaymentCancellation(val id: String, val pgCancellationId: String? = null, val totalAmount: Long, val taxFreeAmount: Long, val vatAmount: Long, val easyPayDiscountAmount: Long? = null, val reason: String, val cancelledAt: @Serializable(with = InstantSerializer::class) Instant? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val receiptUrl: String? = null, val trigger: Trigger? = null) : PaymentCancellation.Recognized

취소 완료 상태

Link copied to clipboard
@Serializable(with = TriggerSerializer::class)
sealed interface Trigger
Link copied to clipboard
object TriggerSerializer : KSerializer<Trigger>
Link copied to clipboard
@Serializable
@SerialName(value = "VIRTUAL_ACCOUNT_ISSUED")
data class VirtualAccountIssuedPayment(val id: String, val transactionId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val pgTxId: String? = null) : Payment.Recognized

가상계좌 발급 완료 상태 건

Link copied to clipboard
@Serializable
@SerialName(value = "VIRTUAL_ACCOUNT_ISSUED")
data class VirtualAccountIssuedPaymentTransaction(val id: String, val paymentId: String, val merchantId: String, val storeId: String, val method: PaymentMethod? = null, val channel: SelectedChannel, val channelGroup: ChannelGroupSummary? = null, val version: PortOneVersion, val scheduleId: String? = null, val billingKey: String? = null, val webhooks: List<PaymentWebhook>? = null, val requestedAt: @Serializable(with = InstantSerializer::class) Instant, val updatedAt: @Serializable(with = InstantSerializer::class) Instant, val statusChangedAt: @Serializable(with = InstantSerializer::class) Instant, val orderName: String, val amount: PaymentAmount, val currency: Currency, val customer: Customer, val promotionId: String? = null, val isCulturalExpense: Boolean? = null, val escrow: PaymentEscrow? = null, val products: List<PaymentProduct>? = null, val productCount: Int? = null, val customData: String? = null, val country: Country? = null, val pgTxId: String? = null) : PaymentTransaction.Recognized

가상계좌 발급 완료 상태 건